package com.soft.mainsite.module.city.dao;

import com.soft.mainsite.module.city.dto.CityDto;
import com.soft.mainsite.module.city.entity.City;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * CityDao.java 此类用于城市dao
 *
 * @author:李昭阳
 * @date:2019/4/12 0012
 * @remark:
 */
public interface CityDao {

    /**
     * 查询所有省份列表
     * @return
     */
    List<City> selectProviceList();

    /**
     * 查询所有城市列表
     * @return
     */
    List<CityDto> selectCityList();

    /**
     * 查询所有省份城市列表
     * @return
     */
    List<City> selectProviceCityList();

    /**
     * 通过省份code查询城市列表
     * @param proviceCode
     * @return
     */
    List<City> selectCityListByProvice(@Param("proviceCode") Integer proviceCode);

    /**
     * 查询站点城市列表(移动端首页使用)
     * @param siteId
     * @return
     */
    List<CityDto> selectSiteCityList(@Param("siteId") Integer siteId);

    /**
     * 根据站点id查询城市信息
     * @param siteId
     * @return
     */
    CityDto selectCityBySiteId(@Param("siteId") Integer siteId);

    /**
     * 根据城市父编码查询城市区县列表
     *
     * @param cityCode
     * @return
     */
    List<City> getCityDistrictByCityParentCode(@Param("cityCode")Integer cityCode);

}
